In a portable electronic device such as a mobile station, or any computing device that uses a graphical display screen such as a personal computer, the data that is displayed is fed from what is generally termed a frame memory. The data of the frame memory may be corrupted, e.g., by an electrostatic discharge (ESD) pulse from a user's touch. The risk of ESD pulse is particularly high when a person handles an expansion card or opens a computing device and touches an internal component or mounting hardware. Nevertheless, the prior art appears not to distinguish between normal use and these high risk situations in addressing the problem of data corruption at the frame memory. While and ESD pulse is of primary concern, the problem arises with any noise pulse. The risk of data corruption is more prevalent in smaller devices that operate on smaller current, as the same ESD pulse corrupts micro-current data more readily than data moving with a larger current.
To minimize the amount of time that corrupted data in the frame memory might be displayed at the display screen, the contents of the frame memory is updated periodically with correct data, such as every few seconds. The display of any corrupted data is therefore short-lived. This is not seen to be the most elegant solution. A typical quarter VGA (QVGA) display screen of a mobile station has resolution of 240*320*24 bits, which occupies 1,843,200 bits or about 230,400 bytes of frame memory. Compared to 30-50 bytes for other registers, updating the frame memory even periodically is a power and data-intense endeavor.
The substance of the problem is illustrated in FIGS. 1A-1B, which present slightly different schematic block diagrams of the same relevant portions of a mobile station. In FIGS. 1A-1B, the display screen 20 is updated continuously from the frame memory 22, which resides typically in the display driver 24. The display screen 20 and the driver 24 with its frame memory 22 are typically manufactured as a single sub-component, commonly termed a display unit. To ensure that corrupted data is not displayed for a prolonged period of time, the controlling software, typically located primarily in the main memory but with some lower level functions disposed in the display driver 24, refreshes the contents of the frame memory 22 via the interface 26 periodically, commonly every few seconds. The flex foil 28 of FIG. 1A illustrates uploads to the frame memory to reduce data bottlenecks, and the interface 26 leads to a main memory via a processor (neither shown in FIGS. 1A-1B). While the frame memory 22 may update the display screen 20 continuously (e.g., 60 times per second or 60 Hz), those components are matched to one another and share a dedicated link 30, an advantage in manufacturing them as a single sub-component. Updating the frame memory 22 over the interface 26 involves more components within the overall device (such as the processor or main memory within the overall device), and occupies data transfer busses that are used by other components for other processes.
What is needed in the art is a more elegant method and apparatus to ensure that the display screen presents accurate data, or that any corrupted data that it does display is minimized in time or extent. The solution described herein has broad applications for validating data stored in any memory, whether or not related to a display memory.